Skip to content

Conversation

@timsurber
Copy link
Contributor

Description

This adds the new Debian 14 (forky) as target which is currently in testing.
Because the last release Debian 13 (trixie) is quite recent there should not be any major breaking changing, so all the appgroups are symlinked to trixie.

How Has This Been Tested?

./compile.sh SKIP_ARMBIAN_REPO=yes for several board / desktop combinations, tested on physical rock5b with Gnome

Checklist:

Please delete options that are not relevant.

  • My code follows the style guidelines of this project
  • I have performed a self-review of my own code
  • [ x] My changes generate no new warnings

@timsurber timsurber requested review from a team and igorpecovnik as code owners October 23, 2025 22:40
@github-actions github-actions bot added 11 Milestone: Fourth quarter release size/small PR with less then 50 lines Desktop Graphical user interface labels Oct 23, 2025
@coderabbitai
Copy link
Contributor

coderabbitai bot commented Oct 23, 2025

Walkthrough

Adds a new Debian distribution "Forky" via multiple config files (config/distributions/forky/{architectures,name,order,support,upgrade}) and simple entries for CLI and desktop (config/cli/forky, config/desktop/forky). Updates config/distributions/sid/order from 9 to 11 and changes config/distributions/trixie/upgrade from "testing" to "forky,testing". Updates config/distributions/plucky/order from 8 to 9. Extends release handling in lib/functions/rootfs/distro-specific.sh to recognize trixie and forky alongside existing releases and maps forky into the Debian suite branch.

Estimated code review effort

🎯 2 (Simple) | ⏱️ ~10 minutes

Areas to pay attention to:

  • lib/functions/rootfs/distro-specific.sh — verify case branch logic and suite mapping for new releases (trixie, forky).
  • config/distributions/trixie/upgrade — ensure the new "forky,testing" value is intended for upgrade paths.
  • config/distributions/sid/order and config/distributions/plucky/order — confirm numeric order changes are correct.
  • New config/distributions/forky/* files — confirm values (architectures, name, order, support, upgrade) are consistent.

Possibly related PRs

Pre-merge checks and finishing touches

✅ Passed checks (3 passed)
Check name Status Explanation
Title Check ✅ Passed The pull request title "add Debian Forky as CSC target" directly and clearly describes the primary change in the changeset. The modifications across multiple files (new distribution configuration under config/distributions/forky/, updates to upgrade chains, extensions to distro-specific handling) all center on adding Debian 14 (Forky) as a new supported target. The title is concise, specific, and accurately summarizes the main objective without being vague or overly broad.
Description Check ✅ Passed The pull request description is clearly related to the changeset. It explains that Debian 14 (forky) is being added as a new target currently in testing, describes the relationship to trixie (with appgroups symlinked due to trixie being recently released), documents the testing approach using compile.sh and physical testing on rock5b, and includes standard checklist items. The description provides appropriate context for understanding the intent and testing of the changes.
Docstring Coverage ✅ Passed Docstring coverage is 100.00% which is sufficient. The required threshold is 80.00%.
✨ Finishing touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Post copyable unit tests in a comment

📜 Recent review details

Configuration used: CodeRabbit UI

Review profile: CHILL

Plan: Pro

Disabled knowledge base sources:

  • Jira integration is disabled by default for public repositories

You can enable these sources in your CodeRabbit configuration.

📥 Commits

Reviewing files that changed from the base of the PR and between 76db74d and 65e856b.

📒 Files selected for processing (3)
  • config/distributions/forky/order (1 hunks)
  • config/distributions/plucky/order (1 hunks)
  • config/distributions/sid/order (1 hunks)
✅ Files skipped from review due to trivial changes (1)
  • config/distributions/plucky/order
🚧 Files skipped from review as they are similar to previous changes (1)
  • config/distributions/forky/order
🔇 Additional comments (1)
config/distributions/sid/order (1)

1-1: Order value 11 is unique and correctly positioned.

Verification confirms:

  • ✅ Order 11 is unique across all distributions
  • ✅ Complete ordering sequence is correct (sequential 1-11 with no gaps)
  • ✅ Pre-existing duplicate issue resolved: plucky moved from 8 to 9, oracular remains at 8
  • ✅ Logical ordering is sound: sid (unstable, 11) correctly ordered after forky (testing, 10)

The change is correct.


Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands and usage tips.

@github-actions github-actions bot added Needs review Seeking for review Framework Framework components labels Oct 23, 2025
Copy link
Contributor

@coderabbitai coderabbitai bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 1

📜 Review details

Configuration used: CodeRabbit UI

Review profile: CHILL

Plan: Pro

Disabled knowledge base sources:

  • Jira integration is disabled by default for public repositories

You can enable these sources in your CodeRabbit configuration.

📥 Commits

Reviewing files that changed from the base of the PR and between 3c7ace8 and 85da0b0.

📒 Files selected for processing (10)
  • config/cli/forky (1 hunks)
  • config/desktop/forky (1 hunks)
  • config/distributions/forky/architectures (1 hunks)
  • config/distributions/forky/name (1 hunks)
  • config/distributions/forky/order (1 hunks)
  • config/distributions/forky/support (1 hunks)
  • config/distributions/forky/upgrade (1 hunks)
  • config/distributions/sid/order (1 hunks)
  • config/distributions/trixie/upgrade (1 hunks)
  • lib/functions/rootfs/distro-specific.sh (2 hunks)
🔇 Additional comments (11)
config/cli/forky (1)

1-1: CLI alias to trixie matches desktop—verified and correct.

Both config/cli/forky and config/desktop/forky are symlinks pointing to trixie, and both target directories exist. Aliases maintain parity as intended.

config/desktop/forky (1)

1-1: Verified: aliases and targets are correctly configured.

Both config/desktop/forky and config/cli/forky are properly set as symlinks to trixie, and both target directories exist. The structural differences between them (appgroups/environments vs debootstrap/main) reflect their different distribution-specific schemas, which is expected. No action needed.

config/distributions/forky/upgrade (1)

1-1: Code is correct; no changes needed.

The codebase already properly recognizes "forky" as Debian (line 88, lib/functions/rootfs/distro-specific.sh) and maps it to the correct APT suites: forky and forky-updates. The new config/distributions/forky/upgrade file containing "testing" is metadata only (used in /etc/armbian-distribution-status), not APT suite configuration. The suite names are hardcoded based on the ${release} variable and correctly reflect that Forky is Debian's testing branch.

config/distributions/trixie/upgrade (1)

1-1: Change is correct and follows the established multi-target upgrade pattern.

All distributions consistently use comma-separated targets in their upgrade files (e.g., bookworm: trixie,testing; bullseye: bookworm,trixie,testing). The forky,testing format for trixie aligns with this convention, representing a fallback sequence: prefer forky, fall back to testing. This is consumed by armbian-config and motd as documented in the build code.

Optional: Consider dropping ,testing from trixie/upgrade once Forky reaches stable status, similar to how forky/upgrade currently lists only testing.

config/distributions/forky/support (1)

1-1: Distribution support level correctly set.

The "csc" value properly marks Forky as a Community-Supported Component target, aligning with the PR objective.

config/distributions/forky/order (1)

1-1: Ordering value is logically sound.

Forky (9) will sort before Sid (10), which is appropriate since Forky is testing and Sid is unstable.

config/distributions/forky/name (1)

1-1: Distribution display name is clear and follows Debian's official naming.

"Debian 14 Forky" is appropriate and aligns with the Debian release nomenclature.

lib/functions/rootfs/distro-specific.sh (3)

72-72: Documentation comment correctly updated to reflect supported releases.

Forky is now listed as a valid release parameter, keeping the documentation in sync with the implementation.


87-99: Forky correctly integrated into Debian-based distribution handling.

Adding Forky to the case statement alongside Trixie ensures it receives the appropriate APT source configuration with security updates and backports (since it's neither buster nor bullseye). The release will be treated as a tested distribution rather than unstable, which is correct for Forky's testing branch status.


101-216: Forky will correctly utilize existing Debian infrastructure.

The release will leverage the standard Debian APT configuration, keyrings, and mirrors without requiring special handling. Armbian repository logic uses the RELEASE variable generically, so Forky components (main, desktop, utils) will be available automatically through the standard Armbian mirror configuration.

config/distributions/forky/architectures (1)

1-1: Format is consistent with all other distributions.

The verification confirms that all architecture configuration files across distributions use the same comma-separated format without spaces. The forky file matches this standard.

@github-actions github-actions bot added the Ready to merge Reviewed, tested and ready for merge label Oct 27, 2025
@github-actions
Copy link
Contributor

✅ This PR has been reviewed and approved — all set for merge!

@github-actions github-actions bot removed the Needs review Seeking for review label Oct 27, 2025
@igorpecovnik igorpecovnik merged commit 7780548 into armbian:main Oct 27, 2025
12 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

11 Milestone: Fourth quarter release Desktop Graphical user interface Framework Framework components Ready to merge Reviewed, tested and ready for merge size/small PR with less then 50 lines

Development

Successfully merging this pull request may close these issues.

2 participants